Commerce UGC Marketing Video · skill Open Skill công khai

Commerce UGC Marketing Video

**TikTok UGC Affiliate Short · One Avatar, One Product, One Native Sell · ref2v + Smart Multi-Param** *The agent skill for creators who want a finished **shoppable TikTok-style UGC short**—not a polished brand film, a storyboard grid, a mute lookbook, or lip-sync driven by a separate TTS track* **TikTok UGC Affiliate Short** is a production-native Agent Skill for Digen. It orchestrates a complete **reference-to-video (ref2v)** pipeline for one affiliate episode: **Avatar + product (or uploads) → Template A–D lock → consumer script → static identity plates → voice persona once → ≤10s ref2v segments → one joined vertical cut** No contact sheets. No `audio_url` on scripted ref2v. No ad copy in TTS. The lead stays **raw phone UGC**. Beats follow **golden template density** (time-coded action, room tone, **inline quoted lines**). Stills are **identity plates**, not motion keyframes. The film reads **anti-ad** from frame one. ## What you get | For creators | For the production stack | | --- | --- | | **Template-native** — four proven UGC grammars (Alpha / Oops / Sensory / Bestie); the agent picks one for your product, not a generic “influencer ad” | **Opinionated pipeline** — portrait lock, ref2v-only deliverable, ≤10s segments, multi-param pack, single speech layer, and mix encoded in-skill | | **Upload-first** — your model and product photos bind identity; missing assets → static `characters` / `props` plates only | **ref2v-first** — no default i2v / ai2v / t2v / director chains; no physical model names; no `list_models` | | **Script you can hear** — plain-language ad lines in the brief; full lines live in the tool prompt, not chat-only | **Two-ref binding** — `input_urls` = avatar, then product when on camera; `<Picture N>` labels match order | | **Multi-segment without hand chaos** — seg1 ends on the pose seg2 needs; segment-local clocks; optional interaction plate for tough two-hand beats | **Template library in `references/`** — pixel-match migrated beats; multi-param skeleton is a **wrapper**, not a rewrite | | **Pauses that continue** — template confirm, script confirm, after delivery; clickable next steps in your language | **Progressive disclosure** — golden cases in `references/template-library.md`, not bloated chat dumps | | **Plain creator voice** — what she’ll say and what happens next; no skeleton jargon unless you ask | **Marketplace-ready** — clear triggers, defaults, tool contracts, circuit-breaker hygiene | ## Pipeline | Stage | Output | | --- | --- | | **Intake** | Lock language + **9:16 portrait** + default **~15–30s** (2–4 × ≤10s). Collect **Avatar**, **Product**, optional **Vibe** via form if missing | | **Template match** | One of **A–D** with a short why (user-facing). Pause → **`set_guidance`** | | **Consumer brief** | Template choice, segment count, **speakable script**, upload vs generated plates. Pause → confirm before any `generate_*` | | **Identity plates** | **`recognize_image`** on uploads; else **`generate_image`** static **`characters`** / **`props`** only — no motion, no dialogue in stills | | **Voice persona** | **`generate_tts` once** — `voice_instruction` + minimal sample text; persona copied into prompt **`voice_timbre:`**. **Not** wired to ref2v `audio_url` when there is speech | | **Segment scripts** | Per-chapter body from **`references/template-library.md`**: time-coded beats, environment, **quoted lines inline**; multi-param sections when packed | | **ref2v** | One clip per segment, **`model='ref2v'`**, **`duration` ≤10 always set**, **`input_urls` non-empty**, **no `audio_url`** on scripted segments. One segment per agent turn until success | | **Join** | **`mix_clips`** when total **>10s** → **`final_videos`**. ≤10s total can skip the join | ## Production stack | Parameter | Default | Notes | | --- | --- | --- | | **Episode** | **15–30 seconds** | 2–4 clips × ≤10s. Single ≤10s clip skips mix if you ask | | **Engine** | `ref2v` | Forbidden default path: `i2v` / `ai2v` / `t2v` / `fl2v` / director / physical model names | | **Clip duration** | **≤10 seconds** | **Always pass `duration`.** Prompt “10-second” does not set length. Omit → wrong platform default | | **Video orientation** | Portrait · **9:16** | Landscape only if you ask. Plates and video share the lock | | **Image refs** | Avatar always; product when on camera | Upload asset_ids or static plates. Order: **avatar → product** = `<Picture 1>` / `<Picture 2>` | | **Ref order** | Figure → product | Identity plates, not first-frame freeze of the video. Forbidden: empty `input_urls`; prompt-only `generate_video` | | **Speech** | **On-camera lines in ref2v prompt** | One authority: inline quotes (+ optional `dialogue_alignment` extract). Forbidden: TTS `audio_url` + script; trailing `SPEECH: line N` **with** inline quotes (double VO) | | **TTS** | **Once per avatar** | Persona lock only. Forbidden: full ad script in TTS `text`; per-segment TTS | | **Picture audio** | **Diegetic from ref2v** | Room tone / UGC ambience in prompt. No mandatory music tool | | **Cut grammar** | **≤10s segments then join** | `storyboard_videos` until mix; then `final_videos` | | **Templates** | **A–D library** | Substitute avatar/product inside reference beats — forbidden: generic tag-only prompts | | **Multi-segment** | **Continuity + hands** | Segment-local timestamps; seg1 ends on seg2 pose; selfie + two-hand wrap only with phone-prop or interaction plate | | **Confirm** | **After template + after script brief** | Default pauses with **`set_guidance`**. One-shot can skip mid pauses if you ask | | **Buttons** | **Written this turn** | Confirm template / edit lines / start generation — in your language, not internal field names | | **Language** | **User-typed lock** | Replies and script brief in your language; image/video prompt bodies default **English** unless you require spoken language in-frame | ## Modes | Mode | You bring | Agent delivers | | --- | --- | --- | | **Full run** | Avatar + product (or uploads) | Template match → brief → plates → TTS persona → segments → join | | **Template pick** | “Use Template B / Oops vibe” | Locks B grammar; script in that reference shape | | **Upload-first** | Model + product photos | `recognize_image` → refs in every `input_urls` | | **Generate plates** | No product shot | Static prop plate; avatar upload or generated character plate | | **Script edit** | “Change the CTA / shorten to 15s” | Revised `dialogue_script` + segment plan; regen affected clips | | **Single segment** | “Just one ≤10s clip” | One ref2v; skip `mix_clips` | | **Redo one segment** | “Redo clip 2 — hands were wrong” | Continuity-aware rewrite + optional `i2i` interaction plate; remake that segment only | | **One-shot** | “Don’t stop — generate all” | Fewer mid pauses; still tool-safe one-segment-per-turn for video | | **Lengthen** | “30 seconds” | Up to 4 × ≤10s chapters, one mix | ## Example prompts **Full run** > TikTok UGC affiliate short. Portrait 9:16, about 20 seconds. Here’s the model and the product. **Template lean** > Shoppable short for this skincare bottle — **Template C** sensory discovery energy. Chinese VO. **Upload-first** > Use my photos. Anti-ad gym bro tone for this fitness app. ~15s. **Script-first** > Template D bestie vibe. She talks about this tumbler while using it — confirm script before you generate. **Single segment** > One 8-second hook only, portrait ref2v. **Segment redo** > Redo the second clip — same script, fix the wrap beat; she should already have the comforter on her shoulders from clip 1. **One-shot** > Match template, brief me once, then generate all segments and stitch. ## When to use - Portrait **TikTok / Reels-style UGC affiliate** shorts: one creator avatar, one product, spoken on-camera sell - You uploaded a creator and/or product, **or** you’ll generate static plates - You want **Template A–D** structure, not a free-form cinematic paragraph - You need **15–30s** from **≤10s ref2v chunks** with persona-locked voice in prompt, not a separate dub track > **Not the right tool when** you need photoreal **non-UGC** brand films, LEGO / clay / anime worlds, **lip-sync from TTS `audio_url`**, generated song overlay as the main bed, storyboard grids for client sign-off, long-form explainers, or content that must stay **silent** with no on-camera speech. ## Invoke ``` /tiktok-ugc-affiliate-short ``` Or: *“15–30 second portrait UGC affiliate short — pick Template A–D for this product, ref2v only, ≤10s per clip with duration set, one TTS for voice vibe only, script in the video prompt, mix the segments, no audio_url on ref2v.”* **Your avatar · Your product · One template-faithful UGC sell.**

@official

SocialAd

90 15 51

https://d7qlwi7tl2u27.cloudfront.net/skill-covers/dev/admin/100/2026-09-30/thddjum4.jpg